package com.qh.xx.链表;

/**
 * @description:
 * @author: zqh
 * @date: 2021/11/1 12:13
 * https://leetcode-cn.com/problems/delete-node-in-a-linked-list/
 **/
public class _237_删除链表中的节点 {


    // Definition for singly-linked list.
    public class ListNode {
        int val;
        ListNode next;

        ListNode(int x) {
            val = x;
        }
    }

    /**
     * 思想：
     *     先把要删除节点的next下一个节点的值覆盖到要删除的节点上
     *     然后要删除的节点指向它下一个节点的节点next.next
     *
     *
     *     平常思维：
     *     先遍历找到 要删除节点的上一个节点
     *     上一个节点next = 上一个节点.next.next
     */
    class Solution {
        public void deleteNode(ListNode node) {
            node.val = node.next.val;
            node.next = node.next.next;
        }
    }
}
